[Amazon Lex] インテントに入らなかった時のエラー処理 (Error Handling) について
1 はじめに
こんにちは、Alソリューション部の平内(SIN)です。
Amazon Lex(以下、Lex)で作成したボットに、一生懸命話しかけても、なかなかサンプル発話にヒットしなくて、延々と、"Sorry, can you plese repeat that?" と返された経験をお持ちの方は、少なくないのではないでしょうか。
今回は、このメッセージが返されるあたりの仕組みを確認してみました。
2 動作確認用ボット
動作確認のためにボットを作成し、インテントを1つだけ追加しました。
このインテントに設定されたサンプル発話には、"Hello"とだけ設定されていますので、それ以外の発話に対しては、ヒットできないことになります。
試しに、"good bye" と話しかけると、いつものように "Sorry, can you plese repeat that?" が返ります。
そして、これを繰り返すと、6回目にレスポンスが変わります。
3 Error Handler
実は、この動作は、Error Handlerに設定されています。
デフォルトで、Clarification prompts には、"Sorry, can you plese repeat that?" だけが設定されているため、常に、このメッセージが返されていた事になります。
また、Maximum number of retriesが5になっているので、5回までは、繰り返し、Clarification prompts が返されることになります。
そして、6回目に、返されたのは、Hang-up phraseに設定されたメッセージあることが分かります。
4 Error Handlerの設定変更
以下のように変更して、動作を確認してみます。
テストしてみると、メッセージが変わっていることを確認できます。
5 最後に
メッセージの内容や、リトライの回数は、ボットの内容に応じて適切に設定することで、UXの向上を図ることができると思います。
また、Amazon ConnectからLexを呼び出すような場合は、ユーザーの発話が、用意されたインテントにヒットしなかった場合に、ユーザーに返されるレスポンスそのものですので、Amazon Connectの問い合わせフローのストーリにも、適切に合わせる事が重要だと思います。
弊社ではAmazon Connectのキャンペーンを行なっております。
3月に引き続き、4月も「無料Amazon Connectハンズオンセミナー」を開催致します。導入を検討されておられる方は、是非、お申し込み下さい。
また音声を中心とした各種ソリューションの開発支援も行なっております。